package DAO;

import javax.persistence.EntityManager;
import javax.persistence.NonUniqueResultException;
import javax.persistence.Query;

import Entity.Usuario;

public class UsuarioDAO {

	private UsuarioDAO() {
	}

	public static Usuario login(Usuario usuario, EntityManager em) {
		Usuario user = null;
		String login = usuario.getLogin(),password = usuario.getPassword();
		Query query = em
				.createQuery("SELECT user FROM Usuario user WHERE user.login LIKE :usuario AND user.password LIKE :pass");
		query = query.setParameter("usuario", login);
		query = query.setParameter("pass", password);
		System.out.println(query);
		try {
			user = (Usuario) query.getSingleResult();
		} catch (NonUniqueResultException e) {
			user = (Usuario) query.getResultList().get(0);
		} catch (Exception e) {
			e.printStackTrace();
		}

		return user;

	}

	public static void create(Usuario nuevo, EntityManager em) {
		em.persist(nuevo);
	}

	public static Usuario read(Usuario par, EntityManager em) {
		return em.find(par.getClass(), par.getId());
	}

	public static void update(Usuario old, EntityManager em) {
		em.merge(old);
	}

	public static void delete(Usuario market, EntityManager em) {
		em.remove(market);
	}

}
